#ifndef QUEUE_H
#define QUEUE_H

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>

struct queue_node
{
	char *msg;
	struct queue_node *next;
};

struct queue
{
	struct queue_node *first;
	struct queue_node *last;
};

char * dequeue( struct queue *queue ); 
int enqueue( struct queue *queue, char *msg ); 
bool queue_empty( struct queue *queue );
int queue_size( struct queue *queue ); 

struct queue * new_queue();
void delete_queue( struct queue *queue );

#endif /* QUEUE_H */
